[verseId].js 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839
  1. "use strict";
  2. (() => {
  3. var exports = {};
  4. exports.id = 84969;
  5. exports.ids = [84969,64820];
  6. exports.modules = {
  7. /***/ 18218:
  8. /***/ ((module, __webpack_exports__, __webpack_require__) => {
  9. __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
  10. __webpack_require__.r(__webpack_exports__);
  11. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  12. /* harmony export */ "default": () => (/* binding */ pageWrapperTemplate),
  13. /* harmony export */ "getServerSideProps": () => (/* binding */ getServerSideProps),
  14. /* harmony export */ "getStaticPaths": () => (/* binding */ getStaticPaths),
  15. /* harmony export */ "getStaticProps": () => (/* binding */ getStaticProps)
  16. /* harmony export */ });
  17. /* harmony import */ var _sentry_server_config_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(96270);
  18. /* harmony import */ var _sentry_nextjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(58097);
  19. /* harmony import */ var _sentry_nextjs__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_sentry_nextjs__WEBPACK_IMPORTED_MODULE_1__);
  20. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(20997);
  21. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__);
  22. /* harmony import */ var next_router__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(71853);
  23. /* harmony import */ var next_router__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(next_router__WEBPACK_IMPORTED_MODULE_3__);
  24. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(60866);
  25. /* harmony import */ var next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_4__);
  26. /* harmony import */ var _api__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(92684);
  27. /* harmony import */ var _components_NextSeoWrapper__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(25869);
  28. /* harmony import */ var _components_QuranReader__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(14116);
  29. /* harmony import */ var _lib_og__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(11670);
  30. /* harmony import */ var _pages_error__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(36049);
  31. /* harmony import */ var _redux_defaultSettings_util__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(17241);
  32. /* harmony import */ var _utils_api__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(4917);
  33. /* harmony import */ var _utils_chapter__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(95892);
  34. /* harmony import */ var _utils_locale__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(24709);
  35. /* harmony import */ var _utils_navigation__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(57933);
  36. /* harmony import */ var _utils_plainTranslationText__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(94678);
  37. /* harmony import */ var _utils_staticPageGeneration__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(45137);
  38. /* harmony import */ var _utils_validator__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(41051);
  39. /* harmony import */ var _utils_verseKeys__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(36495);
  40. /* harmony import */ var types_QuranReader__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(50467);
  41. var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_components_QuranReader__WEBPACK_IMPORTED_MODULE_7__, _pages_error__WEBPACK_IMPORTED_MODULE_8__, _utils_navigation__WEBPACK_IMPORTED_MODULE_13__]);
  42. ([_components_QuranReader__WEBPACK_IMPORTED_MODULE_7__, _pages_error__WEBPACK_IMPORTED_MODULE_8__, _utils_navigation__WEBPACK_IMPORTED_MODULE_13__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
  43. const Verse = ({ chapterResponse , versesResponse , hasError , isVerse })=>{
  44. const { t , lang } = next_translate_useTranslation__WEBPACK_IMPORTED_MODULE_4___default()("common");
  45. const { query: { verseId } , } = (0,next_router__WEBPACK_IMPORTED_MODULE_3__.useRouter)();
  46. if (hasError || !versesResponse.verses.length) {
  47. return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)(_pages_error__WEBPACK_IMPORTED_MODULE_8__["default"], {
  48. statusCode: 500
  49. });
  50. }
  51. const path = (0,_utils_navigation__WEBPACK_IMPORTED_MODULE_13__/* .getVerseNavigationUrl */ .p5)(chapterResponse.chapter.slug, verseId);
  52. return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.Fragment, {
  53. children: [
  54. /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)(_components_NextSeoWrapper__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
  55. title: `${t("surah")} ${chapterResponse.chapter.transliteratedName} - ${isVerse ? (0,_utils_locale__WEBPACK_IMPORTED_MODULE_12__/* .toLocalizedNumber */ .rQ)(Number(verseId), lang) : (0,_utils_locale__WEBPACK_IMPORTED_MODULE_12__/* .toLocalizedVersesRange */ .Sj)(verseId, lang)}`,
  56. image: (0,_lib_og__WEBPACK_IMPORTED_MODULE_17__/* .getChapterOgImageUrl */ .oJ)({
  57. chapterId: chapterResponse.chapter.id,
  58. verseNumber: isVerse ? Number(verseId) : undefined,
  59. locale: lang
  60. }),
  61. imageWidth: 1200,
  62. imageHeight: 630,
  63. canonical: (0,_utils_navigation__WEBPACK_IMPORTED_MODULE_13__/* .getCanonicalUrl */ .Z2)(lang, path),
  64. languageAlternates: (0,_utils_locale__WEBPACK_IMPORTED_MODULE_12__/* .getLanguageAlternates */ .qc)(path),
  65. description: getOgDescription(versesResponse, isVerse, lang)
  66. }),
  67. /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)(_components_QuranReader__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
  68. initialData: versesResponse,
  69. id: chapterResponse.chapter.id,
  70. quranReaderDataType: isVerse ? types_QuranReader__WEBPACK_IMPORTED_MODULE_16__/* .QuranReaderDataType.Verse */ .Qi.Verse : types_QuranReader__WEBPACK_IMPORTED_MODULE_16__/* .QuranReaderDataType.ChapterVerseRanges */ .Qi.ChapterVerseRanges
  71. })
  72. ]
  73. });
  74. };
  75. const getStaticProps$1 = async ({ params , locale })=>{
  76. let chapterIdOrSlug = String(params.chapterId);
  77. const verseIdOrRange = String(params.verseId);
  78. // 1. make sure the chapter Id/slug is valid using BE since slugs are stored in BE first
  79. const sluggedChapterId = await (0,_api__WEBPACK_IMPORTED_MODULE_5__/* .getChapterIdBySlug */ .U0)(chapterIdOrSlug, locale);
  80. if (sluggedChapterId) {
  81. chapterIdOrSlug = sluggedChapterId;
  82. }
  83. const chaptersData = await (0,_utils_chapter__WEBPACK_IMPORTED_MODULE_11__/* .getAllChaptersData */ .T4)(locale);
  84. // 2. make sure that verse id/range are valid before calling BE to get the verses.
  85. if (!(0,_utils_validator__WEBPACK_IMPORTED_MODULE_14__/* .isValidVerseId */ .tW)(chaptersData, chapterIdOrSlug, verseIdOrRange) && !(0,_utils_validator__WEBPACK_IMPORTED_MODULE_14__/* .isValidVerseRange */ .IT)(chaptersData, chapterIdOrSlug, verseIdOrRange)) {
  86. return {
  87. notFound: true
  88. };
  89. }
  90. /*
  91. Since we already validated the value, if the verseIdOrRange is a number it means we are
  92. viewing the verse's page otherwise it's a range page.
  93. */ const isVerse = (0,_utils_validator__WEBPACK_IMPORTED_MODULE_14__/* .isValidVerseNumber */ .it)(verseIdOrRange);
  94. const defaultMushafId = (0,_utils_api__WEBPACK_IMPORTED_MODULE_10__/* .getMushafId */ .$P)((0,_redux_defaultSettings_util__WEBPACK_IMPORTED_MODULE_9__/* .getQuranReaderStylesInitialState */ .kq)(locale).quranFont, (0,_redux_defaultSettings_util__WEBPACK_IMPORTED_MODULE_9__/* .getQuranReaderStylesInitialState */ .kq)(locale).mushafLines).mushaf;
  95. // common API params between a single verse and range of verses.
  96. let apiParams = {
  97. ...(0,_utils_api__WEBPACK_IMPORTED_MODULE_10__/* .getDefaultWordFields */ .hD)((0,_redux_defaultSettings_util__WEBPACK_IMPORTED_MODULE_9__/* .getQuranReaderStylesInitialState */ .kq)(locale).quranFont),
  98. mushaf: defaultMushafId
  99. };
  100. const metaData = {
  101. numberOfVerses: 1
  102. };
  103. let [from, to] = [
  104. null,
  105. null
  106. ];
  107. if (isVerse) {
  108. apiParams = {
  109. ...apiParams,
  110. ...{
  111. page: verseIdOrRange,
  112. perPage: 1
  113. }
  114. };
  115. } else {
  116. const [fromVerseNumber, toVerseNumber] = (0,_utils_validator__WEBPACK_IMPORTED_MODULE_14__/* .getToAndFromFromRange */ .LX)(verseIdOrRange);
  117. [from, to] = (0,_utils_validator__WEBPACK_IMPORTED_MODULE_14__/* .getToAndFromFromRange */ .LX)(verseIdOrRange).map((ayah)=>`${chapterIdOrSlug}:${ayah}`);
  118. apiParams = {
  119. ...apiParams,
  120. ...{
  121. from,
  122. to
  123. }
  124. };
  125. metaData.from = from;
  126. metaData.to = to;
  127. metaData.numberOfVerses = Number(toVerseNumber) - Number(fromVerseNumber) + 1;
  128. }
  129. try {
  130. const pagesLookupResponse = await (0,_api__WEBPACK_IMPORTED_MODULE_5__/* .getPagesLookup */ .IP)({
  131. chapterNumber: Number(chapterIdOrSlug),
  132. mushaf: defaultMushafId,
  133. from: isVerse ? `${chapterIdOrSlug}:${verseIdOrRange}` : metaData.from,
  134. to: isVerse ? `${chapterIdOrSlug}:${verseIdOrRange}` : metaData.to
  135. });
  136. // if it's range, we need to set the per page as the number of verses of the first page of the range in the actual Mushaf
  137. if (!isVerse) {
  138. const firstRangeMushafPage = Object.keys(pagesLookupResponse.pages)[0];
  139. const firstRangeMushafPageLookup = pagesLookupResponse.pages[firstRangeMushafPage];
  140. const firstRangeMushafPageNumberOfVerses = (0,_utils_verseKeys__WEBPACK_IMPORTED_MODULE_15__/* .generateVerseKeysBetweenTwoVerseKeys */ .h)(chaptersData, firstRangeMushafPageLookup.from, firstRangeMushafPageLookup.to).length;
  141. apiParams = {
  142. ...apiParams,
  143. ...{
  144. perPage: firstRangeMushafPageNumberOfVerses
  145. }
  146. };
  147. }
  148. const versesResponse = await (0,_api__WEBPACK_IMPORTED_MODULE_5__/* .getChapterVerses */ .ix)(chapterIdOrSlug, locale, apiParams);
  149. // if any of the APIs have failed due to internal server error, we will still receive a response but the body will be something like {"status":500,"error":"Internal Server Error"}.
  150. const chapterData = (0,_utils_chapter__WEBPACK_IMPORTED_MODULE_11__/* .getChapterData */ .dy)(chaptersData, chapterIdOrSlug);
  151. if (!chapterData) {
  152. return {
  153. props: {
  154. hasError: true
  155. },
  156. revalidate: _utils_staticPageGeneration__WEBPACK_IMPORTED_MODULE_18__/* .REVALIDATION_PERIOD_ON_ERROR_SECONDS */ .eW
  157. };
  158. }
  159. return {
  160. props: {
  161. chaptersData,
  162. chapterResponse: {
  163. chapter: {
  164. ...chapterData,
  165. id: chapterIdOrSlug
  166. }
  167. },
  168. versesResponse: {
  169. ...versesResponse,
  170. pagesLookup: pagesLookupResponse,
  171. metaData
  172. },
  173. isVerse
  174. },
  175. revalidate: _utils_staticPageGeneration__WEBPACK_IMPORTED_MODULE_18__/* .ONE_WEEK_REVALIDATION_PERIOD_SECONDS */ .Dp
  176. };
  177. } catch (error) {
  178. return {
  179. props: {
  180. hasError: true
  181. },
  182. revalidate: _utils_staticPageGeneration__WEBPACK_IMPORTED_MODULE_18__/* .REVALIDATION_PERIOD_ON_ERROR_SECONDS */ .eW
  183. };
  184. }
  185. };
  186. // Generates the description and open graph description for the page.
  187. const getOgDescription = (versesResponse, isVerse, lang)=>{
  188. let ogText = "";
  189. // Single verse pages
  190. if (isVerse) {
  191. const verse = versesResponse.verses[0];
  192. ogText = verse?.translations?.length > 0 ? (0,_utils_plainTranslationText__WEBPACK_IMPORTED_MODULE_19__/* ["default"] */ .Z)(verse?.translations[0]?.text) : verse?.textImlaeiSimple;
  193. } else {
  194. const firstThreeVerses = versesResponse.verses.slice(0, 3);
  195. ogText = firstThreeVerses.map((verse)=>{
  196. return `(${(0,_utils_locale__WEBPACK_IMPORTED_MODULE_12__/* .toLocalizedNumber */ .rQ)(Number(verse.verseNumber), lang)}) ${verse?.translations?.length > 0 ? (0,_utils_plainTranslationText__WEBPACK_IMPORTED_MODULE_19__/* ["default"] */ .Z)(verse?.translations[0]?.text) : verse?.textImlaeiSimple}`;
  197. }).join(" ");
  198. }
  199. // Check if the text is longer than 300 characters, if it is, trim it and add ellipsis.
  200. if (ogText.length > 300) {
  201. ogText = `${ogText.substring(0, 297)}...`;
  202. }
  203. return ogText;
  204. };
  205. const getStaticPaths = async ()=>({
  206. paths: [],
  207. fallback: "blocking"
  208. });
  209. var serverComponentModule = /*#__PURE__*/Object.freeze({
  210. __proto__: null,
  211. getStaticProps: getStaticProps$1,
  212. getStaticPaths: getStaticPaths,
  213. 'default': Verse
  214. });
  215. /*
  216. * This file is a template for the code which will be substituted when our webpack loader handles non-API files in the
  217. * `pages/` directory.
  218. *
  219. * We use `__SENTRY_WRAPPING_TARGET_FILE__.cjs` as a placeholder for the path to the file being wrapped. Because it's not a real package,
  220. * this causes both TS and ESLint to complain, hence the pragma comments below.
  221. */
  222. const userPageModule = serverComponentModule ;
  223. const pageComponent = userPageModule ? userPageModule.default : undefined;
  224. const origGetInitialProps = pageComponent ? pageComponent.getInitialProps : undefined;
  225. const origGetStaticProps = userPageModule ? userPageModule.getStaticProps : undefined;
  226. const origGetServerSideProps = userPageModule ? userPageModule.getServerSideProps : undefined;
  227. // eslint-disable-next-line @typescript-eslint/no-explicit-any
  228. const getInitialPropsWrappers = {
  229. '/_app': _sentry_nextjs__WEBPACK_IMPORTED_MODULE_1__.wrapAppGetInitialPropsWithSentry,
  230. '/_document': _sentry_nextjs__WEBPACK_IMPORTED_MODULE_1__.wrapDocumentGetInitialPropsWithSentry,
  231. '/_error': _sentry_nextjs__WEBPACK_IMPORTED_MODULE_1__.wrapErrorGetInitialPropsWithSentry,
  232. };
  233. const getInitialPropsWrapper = getInitialPropsWrappers['/[chapterId]/[verseId]'] || _sentry_nextjs__WEBPACK_IMPORTED_MODULE_1__.wrapGetInitialPropsWithSentry;
  234. if (pageComponent && typeof origGetInitialProps === 'function') {
  235. pageComponent.getInitialProps = getInitialPropsWrapper(origGetInitialProps) ;
  236. }
  237. const getStaticProps =
  238. typeof origGetStaticProps === 'function'
  239. ? _sentry_nextjs__WEBPACK_IMPORTED_MODULE_1__.wrapGetStaticPropsWithSentry(origGetStaticProps, '/[chapterId]/[verseId]')
  240. : undefined;
  241. const getServerSideProps =
  242. typeof origGetServerSideProps === 'function'
  243. ? _sentry_nextjs__WEBPACK_IMPORTED_MODULE_1__.wrapGetServerSidePropsWithSentry(origGetServerSideProps, '/[chapterId]/[verseId]')
  244. : undefined;
  245. const pageWrapperTemplate = pageComponent ? _sentry_nextjs__WEBPACK_IMPORTED_MODULE_1__.wrapPageComponentWithSentry(pageComponent ) : pageComponent;
  246. __webpack_async_result__();
  247. } catch(e) { __webpack_async_result__(e); } });
  248. /***/ }),
  249. /***/ 94678:
  250. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  251. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  252. /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
  253. /* harmony export */ });
  254. // Remove html tags and other special characters from translation text
  255. const getPlainTranslationText = (translationText)=>{
  256. // Remove the sup tags and all the content inside them
  257. return translationText.replace(/<sup[^>]*>.*?<\/sup>/g, "");
  258. };
  259. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (getPlainTranslationText);
  260. /***/ }),
  261. /***/ 75184:
  262. /***/ ((module) => {
  263. module.exports = require("@reduxjs/toolkit");
  264. /***/ }),
  265. /***/ 58097:
  266. /***/ ((module) => {
  267. module.exports = require("@sentry/nextjs");
  268. /***/ }),
  269. /***/ 59456:
  270. /***/ ((module) => {
  271. module.exports = require("@xstate/react");
  272. /***/ }),
  273. /***/ 59003:
  274. /***/ ((module) => {
  275. module.exports = require("classnames");
  276. /***/ }),
  277. /***/ 34741:
  278. /***/ ((module) => {
  279. module.exports = require("clipboard-copy");
  280. /***/ }),
  281. /***/ 62733:
  282. /***/ ((module) => {
  283. module.exports = require("fuse.js");
  284. /***/ }),
  285. /***/ 59606:
  286. /***/ ((module) => {
  287. module.exports = require("humps");
  288. /***/ }),
  289. /***/ 59969:
  290. /***/ ((module) => {
  291. module.exports = require("lodash/capitalize");
  292. /***/ }),
  293. /***/ 93908:
  294. /***/ ((module) => {
  295. module.exports = require("lodash/debounce");
  296. /***/ }),
  297. /***/ 12372:
  298. /***/ ((module) => {
  299. module.exports = require("lodash/findKey");
  300. /***/ }),
  301. /***/ 98492:
  302. /***/ ((module) => {
  303. module.exports = require("lodash/groupBy");
  304. /***/ }),
  305. /***/ 35599:
  306. /***/ ((module) => {
  307. module.exports = require("lodash/isArray");
  308. /***/ }),
  309. /***/ 35526:
  310. /***/ ((module) => {
  311. module.exports = require("lodash/random");
  312. /***/ }),
  313. /***/ 64042:
  314. /***/ ((module) => {
  315. module.exports = require("lodash/range");
  316. /***/ }),
  317. /***/ 47657:
  318. /***/ ((module) => {
  319. module.exports = require("lodash/sample");
  320. /***/ }),
  321. /***/ 18459:
  322. /***/ ((module) => {
  323. module.exports = require("lodash/uniq");
  324. /***/ }),
  325. /***/ 16641:
  326. /***/ ((module) => {
  327. module.exports = require("next-seo");
  328. /***/ }),
  329. /***/ 74137:
  330. /***/ ((module) => {
  331. module.exports = require("next-translate/Trans");
  332. /***/ }),
  333. /***/ 60866:
  334. /***/ ((module) => {
  335. module.exports = require("next-translate/useTranslation");
  336. /***/ }),
  337. /***/ 3280:
  338. /***/ ((module) => {
  339. module.exports = require("next/dist/shared/lib/app-router-context.js");
  340. /***/ }),
  341. /***/ 92796:
  342. /***/ ((module) => {
  343. module.exports = require("next/dist/shared/lib/head-manager-context.js");
  344. /***/ }),
  345. /***/ 3539:
  346. /***/ ((module) => {
  347. module.exports = require("next/dist/shared/lib/i18n/detect-domain-locale.js");
  348. /***/ }),
  349. /***/ 34014:
  350. /***/ ((module) => {
  351. module.exports = require("next/dist/shared/lib/i18n/normalize-locale-path.js");
  352. /***/ }),
  353. /***/ 78524:
  354. /***/ ((module) => {
  355. module.exports = require("next/dist/shared/lib/is-plain-object.js");
  356. /***/ }),
  357. /***/ 95832:
  358. /***/ ((module) => {
  359. module.exports = require("next/dist/shared/lib/loadable.js");
  360. /***/ }),
  361. /***/ 78020:
  362. /***/ ((module) => {
  363. module.exports = require("next/dist/shared/lib/mitt.js");
  364. /***/ }),
  365. /***/ 64406:
  366. /***/ ((module) => {
  367. module.exports = require("next/dist/shared/lib/page-path/denormalize-page-path.js");
  368. /***/ }),
  369. /***/ 24964:
  370. /***/ ((module) => {
  371. module.exports = require("next/dist/shared/lib/router-context.js");
  372. /***/ }),
  373. /***/ 93431:
  374. /***/ ((module) => {
  375. module.exports = require("next/dist/shared/lib/router/utils/add-locale.js");
  376. /***/ }),
  377. /***/ 11751:
  378. /***/ ((module) => {
  379. module.exports = require("next/dist/shared/lib/router/utils/add-path-prefix.js");
  380. /***/ }),
  381. /***/ 46220:
  382. /***/ ((module) => {
  383. module.exports = require("next/dist/shared/lib/router/utils/compare-states.js");
  384. /***/ }),
  385. /***/ 10299:
  386. /***/ ((module) => {
  387. module.exports = require("next/dist/shared/lib/router/utils/format-next-pathname-info.js");
  388. /***/ }),
  389. /***/ 23938:
  390. /***/ ((module) => {
  391. module.exports = require("next/dist/shared/lib/router/utils/format-url.js");
  392. /***/ }),
  393. /***/ 29565:
  394. /***/ ((module) => {
  395. module.exports = require("next/dist/shared/lib/router/utils/get-asset-path-from-route.js");
  396. /***/ }),
  397. /***/ 35789:
  398. /***/ ((module) => {
  399. module.exports = require("next/dist/shared/lib/router/utils/get-next-pathname-info.js");
  400. /***/ }),
  401. /***/ 1897:
  402. /***/ ((module) => {
  403. module.exports = require("next/dist/shared/lib/router/utils/is-bot.js");
  404. /***/ }),
  405. /***/ 1428:
  406. /***/ ((module) => {
  407. module.exports = require("next/dist/shared/lib/router/utils/is-dynamic.js");
  408. /***/ }),
  409. /***/ 28854:
  410. /***/ ((module) => {
  411. module.exports = require("next/dist/shared/lib/router/utils/parse-path.js");
  412. /***/ }),
  413. /***/ 91292:
  414. /***/ ((module) => {
  415. module.exports = require("next/dist/shared/lib/router/utils/parse-relative-url.js");
  416. /***/ }),
  417. /***/ 34567:
  418. /***/ ((module) => {
  419. module.exports = require("next/dist/shared/lib/router/utils/path-has-prefix.js");
  420. /***/ }),
  421. /***/ 80979:
  422. /***/ ((module) => {
  423. module.exports = require("next/dist/shared/lib/router/utils/querystring.js");
  424. /***/ }),
  425. /***/ 93297:
  426. /***/ ((module) => {
  427. module.exports = require("next/dist/shared/lib/router/utils/remove-trailing-slash.js");
  428. /***/ }),
  429. /***/ 36052:
  430. /***/ ((module) => {
  431. module.exports = require("next/dist/shared/lib/router/utils/resolve-rewrites.js");
  432. /***/ }),
  433. /***/ 84226:
  434. /***/ ((module) => {
  435. module.exports = require("next/dist/shared/lib/router/utils/route-matcher.js");
  436. /***/ }),
  437. /***/ 95052:
  438. /***/ ((module) => {
  439. module.exports = require("next/dist/shared/lib/router/utils/route-regex.js");
  440. /***/ }),
  441. /***/ 59232:
  442. /***/ ((module) => {
  443. module.exports = require("next/dist/shared/lib/utils.js");
  444. /***/ }),
  445. /***/ 40968:
  446. /***/ ((module) => {
  447. module.exports = require("next/head");
  448. /***/ }),
  449. /***/ 71853:
  450. /***/ ((module) => {
  451. module.exports = require("next/router");
  452. /***/ }),
  453. /***/ 16689:
  454. /***/ ((module) => {
  455. module.exports = require("react");
  456. /***/ }),
  457. /***/ 2784:
  458. /***/ ((module) => {
  459. module.exports = require("react-hotkeys-hook");
  460. /***/ }),
  461. /***/ 6022:
  462. /***/ ((module) => {
  463. module.exports = require("react-redux");
  464. /***/ }),
  465. /***/ 78404:
  466. /***/ ((module) => {
  467. module.exports = require("react-virtuoso");
  468. /***/ }),
  469. /***/ 20997:
  470. /***/ ((module) => {
  471. module.exports = require("react/jsx-runtime");
  472. /***/ }),
  473. /***/ 14161:
  474. /***/ ((module) => {
  475. module.exports = require("redux-persist");
  476. /***/ }),
  477. /***/ 52648:
  478. /***/ ((module) => {
  479. module.exports = require("refresh-fetch");
  480. /***/ }),
  481. /***/ 82522:
  482. /***/ ((module) => {
  483. module.exports = require("xstate");
  484. /***/ }),
  485. /***/ 44549:
  486. /***/ ((module) => {
  487. module.exports = require("xstate/lib/actions");
  488. /***/ }),
  489. /***/ 11601:
  490. /***/ ((module) => {
  491. module.exports = import("@radix-ui/react-checkbox");;
  492. /***/ }),
  493. /***/ 74973:
  494. /***/ ((module) => {
  495. module.exports = import("@radix-ui/react-collapsible");;
  496. /***/ }),
  497. /***/ 77715:
  498. /***/ ((module) => {
  499. module.exports = import("@radix-ui/react-dialog");;
  500. /***/ }),
  501. /***/ 31481:
  502. /***/ ((module) => {
  503. module.exports = import("@radix-ui/react-dropdown-menu");;
  504. /***/ }),
  505. /***/ 98680:
  506. /***/ ((module) => {
  507. module.exports = import("@radix-ui/react-popover");;
  508. /***/ }),
  509. /***/ 4086:
  510. /***/ ((module) => {
  511. module.exports = import("@radix-ui/react-radio-group");;
  512. /***/ }),
  513. /***/ 72994:
  514. /***/ ((module) => {
  515. module.exports = import("@radix-ui/react-separator");;
  516. /***/ }),
  517. /***/ 66704:
  518. /***/ ((module) => {
  519. module.exports = import("@radix-ui/react-tooltip");;
  520. /***/ }),
  521. /***/ 28560:
  522. /***/ ((module) => {
  523. module.exports = import("@radix-ui/react-visually-hidden");;
  524. /***/ }),
  525. /***/ 88813:
  526. /***/ ((module) => {
  527. module.exports = import("firebase/compat/analytics");;
  528. /***/ }),
  529. /***/ 33773:
  530. /***/ ((module) => {
  531. module.exports = import("firebase/compat/app");;
  532. /***/ }),
  533. /***/ 69915:
  534. /***/ ((module) => {
  535. module.exports = import("js-cookie");;
  536. /***/ }),
  537. /***/ 45641:
  538. /***/ ((module) => {
  539. module.exports = import("react-hook-form");;
  540. /***/ }),
  541. /***/ 35517:
  542. /***/ ((module) => {
  543. module.exports = import("react-joyride");;
  544. /***/ }),
  545. /***/ 3590:
  546. /***/ ((module) => {
  547. module.exports = import("react-toastify");;
  548. /***/ }),
  549. /***/ 15941:
  550. /***/ ((module) => {
  551. module.exports = import("swr");;
  552. /***/ }),
  553. /***/ 79847:
  554. /***/ ((module) => {
  555. module.exports = import("swr/immutable");;
  556. /***/ }),
  557. /***/ 63477:
  558. /***/ ((module) => {
  559. module.exports = require("querystring");
  560. /***/ })
  561. };
  562. ;
  563. // load runtime
  564. var __webpack_require__ = require("../../webpack-runtime.js");
  565. __webpack_require__.C(exports);
  566. var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
  567. var __webpack_exports__ = __webpack_require__.X(0, [11497,79165,96954,96270,24709,57933,61239,25869,50497,76410,79717,13830,37883,22197,12951,36049,85949,62093,91308,41051,99163,5639,42752,46570,64564,57072,37013,67972,6094,17543,66151,39508], () => (__webpack_exec__(18218)));
  568. module.exports = __webpack_exports__;
  569. })();
  570. //# sourceMappingURL=[verseId].js.map